package com.etc.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.etc.entity.Scenic;
import com.etc.service.arithmetic.ScenicMessage;



@Repository
public interface ScenicMapper {
	int deleteByPrimaryKey(Integer sid);

	int insert(Scenic record);

	int insertSelective(Scenic record);

	Scenic selectByPrimaryKey(Integer sid);

	int updateByPrimaryKeySelective(Scenic record);


    int updateByPrimaryKey(Scenic record);
    
    //根据省市，喜好进行分页
    List<Scenic> selectByPage(@Param("star")int star,@Param("pagesize")int pagesize,@Param("pid")int pid,@Param("cid")int cid,@Param("hid")int hid);
    
    //根据省市，喜好查询总共有多少条记录
    int selectCountPage(@Param("pid")int pid,@Param("cid")int cid,@Param("hid")int hid);
    
    //根据省市与用户喜好查询所有景点的信息
    List<Scenic> selectByPCHid(@Param("pid")int pid,@Param("cid")int cid,@Param("hid")int hid);
    
    //根据景点Id查询景点的部分信息
    ScenicMessage selectScenicBySidfindalitterMessage(int sid);
    //根据景点名字查询景点信息
    Scenic selectScenicBySname(@Param("sname")String sname);
    
    //根据省份编号查询热门景点按用户满意度按降序获取前4条记录
    List<Scenic> selectHotScenicByPid(int pid);
	

	// 主题分类
	/**
	 * 
	 * @param start起始位置
	 * @param pagesize
	 *            分页数
	 * @param hid
	 *            查询hid
	 * @return
	 */
	List<Scenic> selectThemeByPage(@Param(value = "start") Integer start, @Param(value = "pagesize") Integer pagesize,
			@Param(value = "content") String content);

	// 查询记录数
	int selectCount(@Param(value = "content") String content);


}